<HTML><HEAD><TITLE> Module tb</TITLE></HEAD>
<BODY>
<H1>Module tb</H1>

<P>Contains a little bit of custom traceback code to handle preserving
tracebacks across remote method invocations.  <H2>Classes</H2>
<UL>
</UL>
<H2>Functions</H2>
<UL>
<LI><A HREF="#errorText(ex)">errorText(ex)</A>
<LI><A HREF="#saveTraceback(ex)">saveTraceback(ex)</A>
</UL>

<A NAME="errorText(ex)">
<H3>errorText(ex)</H3>
<PRE>
def errorText(ex):
</PRE>

<P>Returns a string identical to what would be printed from
traceback.print_exc(), except that the special "dopy_traceback" attribute is
used (if it exists) to provide traceback detail across remote method invocation
boundaries.  
<A NAME="saveTraceback(ex)">
<H3>saveTraceback(ex)</H3>
<PRE>
def saveTraceback(ex):
</PRE>

<P>Stores traceback information in the exception object under the attribute
"dopy_traceback".  
<P>DOPY user code generally need not worry about this function.  It is called by
the DOPY server prior to passing an exception back through a discontinuity.  
</BODY>
</HTML>
